import { Toast } from 'antd-mobile';
import request, { extend } from 'umi-request';
import { history } from 'umi';
// 在请求之前做一些事情，比如改变url，或者改变options
// 在请求拦截器里面打开loading
request.interceptors.request.use((url, options) => {
  options.headers = {
    ...options.headers,
    Authorization: localStorage.token || '',
  };
  return {
    url,
    options,
  };
});

const ERROR_CODE = {
  500: '服务器内部错误',
  404: '请求资源不存在',
  504: '访问超时',
  555: '用户登陆过期'
};
// 在请求回来之后组做一些事情
// 在返回拦截器里面关闭loading
request.interceptors.response.use(async (response, options) => {
  const res = await response.json();
  // console.log(response.status);

  if (response.status === 200) {
    if (res.success) {
      // return res.data;
      if (res.data) {
        //查询...   直接拿值
        return res.data;
      } else {
        //新增、删除、修改...  手动提示用户操作成功
        return res
      }
    } else {
      //失败提示
     
      // if (options.noError) {
      //   return res
      // } else {
        if (res.code == 777) {
          localStorage.clear()
          
          history.push('/login')
        }
        Toast.show({ content: res.message })
        return res
      // }

    }
  } else {
    const message = ERROR_CODE[response.status] || '默认错误'
    Toast.show({ content: message })
    return ''
  }


});

